 $ type sys$help:CMS030.RELEASE_NOTES;1






















                                  VAX DEC/CMS

                                  VERSION V3.0

                                 RELEASE NOTES

                                 14 April 1988

































                                                               Page ii


                                   CONTENTS

        1       Introduction . . . . . . . . . . . . . . . . . . . . 1
        2       Computer Based Training  . . . . . . . . . . . . . . 1
        3       Installation Procedure Requirements  . . . . . . . . 2
        4       User Account Quotas and Privileges . . . . . . . . . 3
        5       Library Conversion . . . . . . . . . . . . . . . . . 3
        6       Functional Enhancements  . . . . . . . . . . . . . . 4
        6.1       New Commands For V3  . . . . . . . . . . . . . . . 5
        6.2       New Qualifiers For V3  . . . . . . . . . . . . . . 5
        6.3       Command Language Syntax Elements . . . . . . . . . 6
        6.3.1       Comma Lists  . . . . . . . . . . . . . . . . . . 6
        6.3.2       Relative Generation Numbers  . . . . . . . . . . 6
        6.3.3       CTRL/C Handling  . . . . . . . . . . . . . . . . 7
        6.4       Access Control . . . . . . . . . . . . . . . . . . 7
        6.4.1       SET ACL  . . . . . . . . . . . . . . . . . . . . 7
        6.4.2       SHOW ACL . . . . . . . . . . . . . . . . . . . . 7
        6.5       Automatic VERIFY/RECOVER . . . . . . . . . . . . . 8
        6.6       Binary Files . . . . . . . . . . . . . . . . . . . 8
        6.7       DIFFERENCES  . . . . . . . . . . . . . . . . . . . 8
        6.8       DELETE GENERATION  . . . . . . . . . . . . . . . . 8
        6.9       History and Notes  . . . . . . . . . . . . . . . . 9
        6.10      Notification . . . . . . . . . . . . . . . . . . . 9
        6.11      MODIFY GENERATION  . . . . . . . . . . . . . . . . 9
        6.12      Reference Copy Handling  . . . . . . . . . . . .  10
        6.13      REMARK . . . . . . . . . . . . . . . . . . . . .  11
        6.14      REMOVE GENERATION  . . . . . . . . . . . . . . .  12
        6.15      REPLACE  . . . . . . . . . . . . . . . . . . . .  12
        6.16      RESERVE  . . . . . . . . . . . . . . . . . . . .  12
        6.17      REVIEW . . . . . . . . . . . . . . . . . . . . .  13
        6.17.1      ACCEPT GENERATION  . . . . . . . . . . . . . .  13
        6.17.2      CANCEL REVIEW  . . . . . . . . . . . . . . . .  13
        6.17.3      MARK GENERATION  . . . . . . . . . . . . . . .  13
        6.17.4      REJECT GENERATION  . . . . . . . . . . . . . .  14
        6.17.5      REVIEW GENERATION  . . . . . . . . . . . . . .  14
        6.17.6      SHOW REVIEWS_PENDING . . . . . . . . . . . . .  14
        6.18      Search Lists . . . . . . . . . . . . . . . . . .  15
        6.18.1      SET NOLIBRARY  . . . . . . . . . . . . . . . .  15
        6.19      SHOW RESERVATIONS  . . . . . . . . . . . . . . .  15
        6.20      UNRESERVE  . . . . . . . . . . . . . . . . . . .  16
        6.21      New Callable Entry Points for V3 . . . . . . . .  16
        6.22      Modified Callable Entry Points for V3  . . . . .  17
        7       Known Problems and Restrictions  . . . . . . . . .  17
        7.1       CMS V2.3 and CMS T3.0 Libraries  . . . . . . . .  17
        7.2       Callback Routine Parameters  . . . . . . . . . .  18
        7.3       Merging Binary Files . . . . . . . . . . . . . .  18
        7.4       Depth of Library Directories . . . . . . . . . .  18
        7.5       Virtual Memory Requirements  . . . . . . . . . .  18
        7.6       Assigning Action ACEs to Multiple Objects  . . .  18
        7.7       Blanks Cannot Separate Multiple Action ACEs  . .  18
        7.8       Wildcard Indicator in Notification Messages  . .  19
        7.9       Restriction on CMS$FETCH_OPEN and Library Search 
                  Lists  . . . . . . . . . . . . . . . . . . . . .  19
        7.10      Restriction on DIFFERENCES and Library Search 
                  Lists  . . . . . . . . . . . . . . . . . . . . .  19





















                                                              Page iii


        7.11      Input File Deletion  . . . . . . . . . . . . . .  20
        7.12      COPY ELEMENT with Many Elements/Generations  . .  20
        7.13      Generation Stack Overflow  . . . . . . . . . . .  20
        7.14      COPY ELEMENT/LIBRARY Messages  . . . . . . . . .  20
        7.15      Reference Copy Messages  . . . . . . . . . . . .  20
        7.16      VERIFY/REPAIR on a Library with REFREPAIR 
                  Condition  . . . . . . . . . . . . . . . . . . .  20
        7.17      VERIFY/RECOVER on Valid Library  . . . . . . . .  21
        7.18      SET ACL/DELETE with Nonexistent Identifier . . .  21
        7.19      Syntax Errors on SET ACL and SHOW ACL  . . . . .  21
        7.20      Severity of Summary Messages . . . . . . . . . .  21
        7.21      Parameters on Negated Qualifiers . . . . . . . .  21
        8       Documentation Errata . . . . . . . . . . . . . . .  21
        8.1       RETRIEVE ARCHIVE . . . . . . . . . . . . . . . .  21










                                                                Page 1


     1  Introduction

          These are the release notes for DEC/CMS version V3.0.   This
          is  a major release containing new functionality beyond that
          available  in  previous   releases.    Included   below   is
          information  about  computer  based  training  for  DEC/CMS,
          requirements for installing and using  DEC/CMS,  information
          about  library  conversion,  descriptions  of  all  the  new
          features  implemented   in   V3.0,   descriptions   of   any
          restrictions   and   outstanding   bugs,   and   a  list  of
          documentation errors.


                                      NOTE

              Before installing and using  DEC/CMS  V3.0  for  the
              first  time,  you MUST use the VERIFY command on ALL
              existing libraries and correct any reported problems
              before  proceeding.   CMS  V2 libraries which do not
              verify correctly may not be convertible to  V3.   It
              is  extremely  important  to verify ALL V2 libraries
              BEFORE V3  is  installed,  as  the  V3  installation
              procedure  will remove CMS V2 from the system.  This
              is a precaution to prevent the accidental corruption
              of  CMS  V3  libraries by operating on them with CMS
              V2, as CMS V2 does not recognize V3 libraries.   CMS
              V3  will  properly  recognize V2 libraries, and will
              not  operate  on  them.   For  more  information  on
              library  conversion  please  refer  to  the "Library
              Conversion" section in this document.



     2  Computer Based Training

          Computer  based  training  is  available  for  VAX  DEC/Code
          Management  System, VAX DEC/Module Management System and VAX
          Language-Sensitive Editor.

          To order the "Using VAX DEC/CMS and  VAX  DEC/MMS"  computer
          based    training    (CBI)    or    the   "Using   the   VAX
          Language-Sensitive  Editor"  (CBI)  please  call  the   most
          convenient  location  listed  below.   Information  on other
          training available from  Digital  Equipment  Corporation  in
          CBI,  lecture/lab  and other formats can also be obtained at
          these numbers.

          Order numbers and media for these courses are:

                  Using VAX DEC/CMS and VAX       Using the VAX Language Sensitive
          Media   DEC/MMS                         Editor

          RX50    EY-8267E-RX                     EY-3491E-RX
          1600bpi EY-8267E-MT                     EY-3491E-MT
          TK50    EY-8267E-TK                     EY-3491E-TK





















                                                                Page 2


          In the US and Canada call toll free 1-800-332-5656

          In  Europe  contact  your  local  training  center  at   the
          following telephone numbers:

          Training Center         Country         Telephone

          Barcelona               Spain           [34] (93) 2035200
          Brussels                Belgium         02/242.50.95
          Copenhagen              Denmark         +45-2-88.96.66
          Evry                    France          60.76.50.05
          Geneva                  Switzerland     [41] (+22) 31 56 55
          Highfield               England,UK      [44]-(734)-868008
          Nieuwegein              Holland         [31]-(3402)-65654
          Madrid                  Spain           [34] (91) 7347002
          Manchester              England         [44]-061-865-0831
          Milan                   Italy           [39]-(2)-617961
          Munich                  Germany         [49]-(89)-95072281
          Reading                 England, UK     [44]-(734)-868711
          Zurich                  Switzerland     [41]-(1)-3120555

          In the General International Area contact  training  centers
          at the following telephone numbers:

          Training Center         Location                Telephone

          Digital Equipment Corp  Brisbane                (61) (07) 221 6000
          (Australia)             Canberra                (61) (62) 47 3654
                                  Melbourne               (61) (03) 895 9595
                                  Sydney                  (61) (02) 412 5252
          Dig Eq do Brasil Ltda   Rio de Janeiro          (55) (21) 297-1122
                                  Sao Paulo               (55) (11) 575-0088
          Digital Eq of Canada    Montreal                (514) 340-7811
                                  Ottawa                  (613) 723-3634
                                  Toronto                 (416) 597-3429
                                  Vancouver               (604) 276-6902
          Digital Eq Caribbean    Puerto Rico             (809) 754-7575
          Digital Eq Hong Kong    Wanchai                 (852) (5) 861 4283
          Nihon Digital Eq Corp   Osaka                   (81) (06) 206-2771
          (Japan)                 Tokyo                   (81) (03) 989-7180
          Digital Eq de Mexico    Mexico                  (905) 687-6671
          Digital Equipment Corp  Auckland                (64) (09) 393 940
          (New Zealand)
          Digital Eq Corp PRC     Beijing                 (86) (1) 890721
          Digital Eq Corp Taiwan  Taiwan                  (886) (2) 776 8888
          Digital Eq Singapore    Singapore               (65) 336 3588


     3  Installation Procedure Requirements

          The installation should take approximately 10 to 45 minutes,
          depending   on   the   type   of   media   and  your  system
          configuration.  Before installing CMS,  you  must  have  the
          following privileges and resources:






















                                                                Page 3


           o  SETPRV  privileges,  or  CMKRNL,   WORLD,   and   SYSPRV
              privileges

           o  A minimum of 4600  blocks  of  free  disk  space  during
              installation; 1600 blocks are used after installation

           o  A minimum of 815  +  size  of  SYS$LIBRARY:DCLTABLES.EXE
              free global pages at installation

           o  A minimum of 7 free global sections at installation


                                      NOTE

              You must ensure that your system has  the  necessary
              global page and global section SYSGEN quotas for the
              installation.  Failure to do so could cause the  DCL
              tables to be corrupted in some situations.

          See the VAX DEC/Code Management  System  Installation  Guide
          for more details on installation procedure requirements.


     4  User Account Quotas and Privileges

          To use CMS, each account must have a minimum of  TMPMBX  and
          NETMBX privileges and the following minimum requirements:

           o  AST limit (ASTLM) of 14

           o  Buffered I/O byte count quota (BYTLM) of 14,000

           o  Enqueue quota (ENQLM) of 1

           o  Open file limit (FILLM) of 6

           o  Timer queue entry limit (TQELM) of 1

          See the VAX DEC/Code Management  System  Installation  Guide
          for more details on user account quotas and privileges.


     5  Library Conversion

          The  CMS  data  base  has  been  reorganized  in  V3.0   for
          performance  reasons.  In addition, the CMS library has been
          reorganized to store element data files  in  subdirectories,
          named  CMS$nnn, of the CMS library directory.  These changes
          require that libraries created with  any  V2  conversion  of
          DEC/CMS  be  converted  to the new format.  Conversion of V1
          libraries is no longer supported.

          To convert a library, you must use the CMS  CONVERT  LIBRARY
          <v2  library>  <v3 library> command, specifying the existing
          library and an empty directory to receive the  new  library.





















                                                                Page 4


          The original library is not altered by the conversion.

          Conversion time depends highly on the number of  classes  in
          the library, the number of generations in those classes, and
          the size of the 00CMS.CMS file in the original library.  For
          example,  a  3000-block 00CMS.CMS file with 125 classes each
          holding approximately 300 generations will take  about  five
          hours  on  a  VAX  11/785 to convert.  The converted library
          will take up about the same amount  of  disk  space  as  the
          original library, although the new 00CMS.CMS is likely to be
          10 to 20% larger.

          Note that CMS does not propagate the security attributes  of
          existing  CMS  V2  library  files to the new CMS V3 library.
          The owner, UIC-based protection, and  access  control  lists
          (ACLs) of the files in the new CMS V3 library are determined
          by  the  default  values  for  the  process  performing  the
          conversion  or  by  the  ownership  and  access control list
          (specifically,  access  control  entries  (ACEs)  with   the
          OPTIONS=DEFAULT  clause  or  DEFAULT_PROTECTION ACEs) on the
          CMS V3 directory file itself.

          You may establish default ACE's on the CMS library directory
          before  performing  the  CMS CONVERT LIBRARY operation.  All
          element files and element file subdirectories created during
          conversion   will   automatically   inherit   the  specified
          protection  and  default  ACEs.   This  is  the  recommended
          procedure.   If  you set the security attributes on files in
          an  existing  CMS  V3  library  (i.e.   after   conversion),
          remember that you must VERIFY/REPAIR the library afterwards,
          so that CMS can restore the element data file headers.   See
          Section 8.2.6 of the Guide to VAX DEC/Code Management System
          for more information on using VERIFY/REPAIR.

          If you had used file  security  attributes  to  restrict  or
          control  access  to  your  CMS  V2  library, you may wish to
          review these in view of the functionality  provided  by  the
          new  CMS  internal  security  mechanisms, which allow you to
          specify ACLs on CMS elements, groups, classes,  and  library
          entities, such as the library history, the CMS commands, and
          the class, element, and group lists.  For  more  information
          refer  to  Chapter 6 of the Guide to VAX DEC/Code Management
          System.


     6  Functional Enhancements

          The following functional enhancements have been made to  VAX
          DEC/CMS since its V2.3 release.






























                                                                Page 5


     6.1  New Commands For V3


           o  CMS ACCEPT GENERATION

           o  CMS CANCEL REVIEW

           o  CMS CONVERT LIBRARY

           o  CMS DELETE GENERATION

           o  CMS MARK GENERATION

           o  CMS MODIFY GENERATION

           o  CMS REJECT GENERATION

           o  CMS RETRIEVE ARCHIVE

           o  CMS REVIEW GENERATION

           o  CMS SET ACL

           o  CMS SET NOLIBRARY

           o  CMS SHOW ACL

           o  CMS SHOW ARCHIVE

           o  CMS SHOW REVIEWS_PENDING



     6.2  New Qualifiers For V3


                Qualifiers                  Command it Will Modify
                ----------                  ----------------------

                /FORMAT                     ANNOTATE and DIFFERENCES

                /REVIEW                     CREATE and MODIFY ELEMENT
                /NOREVIEW

                /AFTER                      CREATE and SET LIBRARY
                /BEFORE

                /SKIP                       DIFFERENCES

                /SENTINEL                   DIFFERENCES

                /IGNORE=HISTORY             DIFFERENCES
                /IGNORE=NOTES

                /PAGE_BREAK                 DIFFERENCES





















                                                                Page 6


                /NOPAGE_BREAK

                /HISTORY                    FETCH and RESERVE
                /NOTES
                /POSITION

                /NOOUTPUT                   FETCH and RESERVE

                /UNUSUAL                    REMARK

                /GENERATION                 REMOVE GENERATION

                /IF_CHANGED                 REPLACE

                /GENERATION                 REPLACE and UNRESERVE
                /IDENTIFICATION_NUMBER

                /NOREPLACEMENTS             SHOW RESERVATIONS

                /CONFIRM                    VERIFY
                /NOCONFIRM

                /OCCLUDE                    most commands


     6.3  Command Language Syntax Elements

          DEC/CMS V3.0 command handling and syntax is the same  as  it
          was  in  V2,  with  the  additions  described  below.  For a
          complete description of commands, syntax,  and  expressions,
          refer to Chapter 9 of the Guide to VAX DEC/CMS.


     6.3.1  Comma Lists -

          All entity expressions, with  the  exception  of  generation
          expressions,    may    now   include   a   comma   list   of
          sub-expressions.  For example, a group expression may  be  a
          group  name,  a  full  or  partial  wild  card,  or  a  list
          containing combinations of both.


     6.3.2  Relative Generation Numbers -

          Generation expressions have been expanded to allow  positive
          and  negative  integer  offsets  as  part of the expression.
          These  offsets  are  used  to  indicate  a  generation   the
          specified  number  of  existing  generations  away  from the
          generation indicated by the previous part of the expression.
          For  example,  a generation expression of CLASS;-3 indicates
          the third generation before the generation that  is  in  the
          class CLASS.

























                                                                Page 7


     6.3.3  CTRL/C Handling -

          The user's typing CTRL/C at any prompt, other than the  CMS>
          subsystem  prompt,  is  now  taken  to  mean that the action
          producing prompt is to be  aborted.   (Versions  of  DEC/CMS
          prior  to  V3.0  treated  CTRL/C  at  a prompt as a carriage
          return).


     6.4  Access Control

          Access control in DEC/CMS V3.0 is  accomplished  via  Access
          Control  Lists  (ACLs)  associated with various commands and
          CMS library entities.  Users manipulate and view  ACLs  with
          the commands described below.

          A CMS ACL is used to control access by groups  of  users  to
          CMS library objects.  They function much the same as ACLs in
          VMS.  The major difference is that while VMS ACLs  are  used
          to specify READ, WRITE, EXECUTE, and DELETE access, CMS ACLs
          are used to specify types of access more meaningful  to  CMS
          operations.   The  access types allowed depend on the object
          in question.


     6.4.1  SET ACL -

          SYNTAX:

            $ CMS SET ACL /qualifiers object-expression "remark"

          COMMAND DESCRIPTION:

            The SET ACL command is used to manipulate ACLs on  various
            objects  in the CMS library.  ACLs can be put on elements,
            groups, and classes, as well as on  the  lists  containing
            these  entities.  (An ACL on a list can be thought of as a
            directory ACL.) An ACL can be put  on  the  library  as  a
            whole,  and on the library history.  ACLs can also be used
            to control access to individual CMS commands.


     6.4.2  SHOW ACL -

          SYNTAX:

            $ CMS SHOW ACL /qualifiers object-expression

          COMMAND DESCRIPTION:

            Displays the  access  control  list  associated  with  the
            specified object or objects.

























                                                                Page 8


     6.5  Automatic VERIFY/RECOVER

          DEC/CMS  will  now  perform  an   automatic   VERIFY/RECOVER
          operation  when  it  tries  to do any operation in a library
          that needs recovery.  A message will be issued informing the
          user that the library has been automatically recovered.


     6.6  Binary Files

          DEC/CMS  can  now  handle  any  valid  RMS  file,  with  the
          exception  of  directory  files.   In  addition to the files
          allowed by DEC/CMS V2, this includes  indexed  and  relative
          files,  as  well  as  files  with undefined record format or
          record attributes of NONE.  The handling of  these  formerly
          disallowed  file  structures is invisible to the user except
          when asking DEC/CMS V3.0 for either an annotated listing  or
          the differences between two such files.  In these cases, the
          user may select one of a set of built-in formatting  options
          via   the   /FORMAT  qualifier  on  both  the  ANNOTATE  and
          DIFFERENCES commands.


     6.7  DIFFERENCES

          DEC/CMS V3.0 supports the following additional qualifiers on
          the DIFFERENCES command:


           -  /[NO]PAGE_BREAK

           -  /SENTINEL=("begin delimiter","end delimiter")

           -  /SKIP=number-of-lines

          In addition  to  these  changes,  two  new  IGNORE  options,
          HISTORY  and  NOTES,  have been added as part of history and
          notes handling.  Also, the GENERATION_DIFFERENCES option can
          be specified on the /FORMAT qualifier to request that a list
          of  generation  differences  between  the  compared  element
          generations be included in the DIFFERENCES output.


     6.8  DELETE GENERATION

          SYNTAX:

            $ CMS DELETE GENERATION  element-expression  [/qualifiers]
            "remark"

          COMMAND DESCRIPTION:

            Causes generations of elements to be removed from the main
            library.  Once a generation has been deleted, it cannot be
            restored without restoring a backup copy of  the  library.





















                                                                Page 9


            However,  the  /ARCHIVE[=file-specification] qualifier can
            be used on the DELETE  GENERATION  command  to  store  the
            contents  of  the  deleted  generations in an archive file
            external to the CMS library.  Refer to the descriptions of
            the  DELETE GENERATION, RETRIEVE ARCHIVE, and SHOW ARCHIVE
            commands in the Command Dictionary part of  the  Guide  to
            VAX DEC/CMS for additional information.

            You cannot delete a generation  that  is  the  head  of  a
            variant  line of descent without first deleting all of the
            generations in  that  variant  line.   You  cannot  delete
            generation  1  of  an  element.   Also, no generation that
            belongs to a class can be deleted.


     6.9  History and Notes

          Users can request inclusion of history and notes in  fetched
          or  reserved  generations when the element does not have the
          history or notes attributes enabled.  This  is  accomplished
          by  the  /HISTORY,  /NOTES, and /POSITION qualifiers on both
          the FETCH and RESERVE commands.


     6.10  Notification

          DEC/CMS V3.0 gives users the ability  to  specify  lists  of
          people  that  are to be notified when an event occurs in the
          library.  An event is the combination of a CMS operation  on
          one  of  the entities in the CMS library.  This notification
          is achieved by processing of one or more  "action"  ACEs  in
          the entity's access control list (ACL).

          DEC/CMS V3.0 provides a default  event  handler,  performing
          user  notification  through VMS Mail.  This event handler is
          in a separate shareable image, to allow the users to  supply
          their  own event handlers, as documented in Chapter 7 of the
          Guide to VAX DEC/CMS.


     6.11  MODIFY GENERATION

          SYNTAX:

            $ CMS  MODIFY  GENERATION  element-expression  /qualifiers
            "remark"

          COMMAND DESCRIPTION:

            Alters information associated with the  generation  of  an
            element.



























                                                               Page 10


     6.12  Reference Copy Handling

          Reference copy handling in DEC/CMS V3.0 is now part  of  the
          processing  of  the command, rather than occurring after the
          command has completed.  Below is a list of commands and  the
          modified  behavior  they  will  exhibit  in  the presence of
          reference copy handling.

           -  CREATE ELEMENT

              Elements created will inherit  the  library's  reference
              copy  attribute.   If  the  library has reference copies
              enabled, the created element, by default, will also.  If
              the  library  does  not  have  reference copies enabled,
              neither will the element.

              The reference copy attribute cannot  be  enabled  on  an
              element  unless  the library reference copy attribute is
              enabled.

              When an element with the reference copy attribute set is
              created,  the  reference copy directory is checked for a
              file with the same name as the element.  If such a  file
              exists, CMS will not create the element and will issue a
              message explaining that  the  reference  copy  directory
              already  contains  a file with that name.  It will be up
              to the user to delete the offending file, choose  a  new
              name  for  the  element,  or choose a new reference copy
              directory for the library.

           -  DELETE ELEMENT

              DELETE ELEMENT will check for delete access to both  the
              element  data file and the corresponding reference copy.
              If the user does not have delete access to  both  files,
              the   command   will  fail,  issuing  an  error  message
              identifying which file could not be deleted.

           -  MODIFY ELEMENT

              Modifying element attributes will  cause  the  reference
              copy  to be created, updated, or deleted, as appropriate
              for the modification.  Changing the name will rename the
              reference  copy.  Disabling the reference copy attribute
              will delete the reference copy.  Enabling the  reference
              copy  attribute  will create a reference copy.  Enabling
              or disabling HISTORY or NOTES attributes will cause  the
              reference copy to be updated.

              The reference copy attribute cannot  be  enabled  on  an
              element  unless  the library reference copy attribute is
              enabled.

           -  MODIFY LIBRARY






















                                                               Page 11


              MODIFY LIBRARY is restricted so  that  /NOREFERENCE_COPY
              can  be  specified  only  if  reference copies have been
              disabled for every element in the library.  This ensures
              that  no  old  copies  are  left behind in the directory
              where someone  may  assume  they  are  the  most  recent
              reference copies.

              If /REFERENCE_COPY is used to change the directory spec,
              CMS  verifies  all  the  files in the new reference copy
              directory to ensure that they reflect the state  of  the
              library.   If  there  are any discrepancies, you will be
              notified that  the  reference  copy  directory  must  be
              repaired  with  the VERIFY/REPAIR command.  You will not
              be able to perform any other operations on  the  library
              until either the reference copies have been repaired, or
              MODIFY  LIBRARY  is  used  to  change  to  a   different
              reference copy directory.

           -  VERIFY

              VERIFY (and VERIFY/REPAIR) now check that the  reference
              copy  exists  for  each  element  with  reference copies
              enabled, and make sure there is no  reference  copy  for
              each  element without reference copies enabled.  It will
              then compare the reference copy  with  the  latest  main
              line generation as a validity check.  VERIFY/REPAIR will
              correct any problems by creating or  deleting  files  as
              necessary.

              The /[NO]CONFIRM qualifier has been added to the  VERIFY
              command  to control whether CMS prompts for confirmation
              prior to deleting any invalid reference copies during  a
              VERIFY/REPAIR  operation.   In  some cases, however, CMS
              will delete invalid reference copies without  prompting.
              Refer  to  the  description of the VERIFY command in the
              Command Dictionary part of the Guide to VAX DEC/CMS  for
              more information.

           -  REPLACE

              REPLACE will not succeed unless the reference  copy  can
              be  updated.   Errors  updating the reference copy cause
              the command to fail with appropriate error messages.



     6.13  REMARK

          DEC/CMS V3.0 allows users to place  remark  strings  in  the
          history  file  that indicate an unusual occurrence.  This is
          accomplished  by  the  /UNUSUAL  qualifier  on  the   REMARK
          command.

























                                                               Page 12


     6.14  REMOVE GENERATION

          DEC/CMS V3.0 allows users to specify which generation of  an
          element  should be removed from a particular class.  This is
          accomplished by the  /GENERATION  qualifier  on  the  REMOVE
          GENERATION  command.   The  generation to be removed must be
          currently existing in the class.


     6.15  REPLACE

          DEC/CMS  V3.0  allows  a  given  user  to  reserve  multiple
          generations  of  the same element (including having multiple
          reservations of the same generation).   This  requires  that
          the  user  be  able  to  specify  which  generation is being
          replaced.   To  accomplish   this,   the   /GENERATION   and
          /IDENTIFICATION_NUMBER   qualifiers   have   been  added  to
          REPLACE.

          DEC/CMS V3.0 allows users to prevent the creation of  a  new
          generation  when  the  file  being  used  as  input  to  the
          replacement has not changed  from  the  original.   This  is
          accomplished  by  the  /IF_CHANGED  qualifier on the REPLACE
          command.

          DEC/CMS V3.0 allows users to REPLACE a  reservation  created
          by  another  user  if  the person attempting the REPLACE has
          BYPASS process privilege or is granted (via an  ACE)  BYPASS
          access to the element.  The REPLACE is logged as having been
          performed by the user entering the command, not the user who
          initially  held  the  reservation.  Any attempt to REPLACE a
          reservation held by another user  prompts  for  confirmation
          before doing so.


     6.16  RESERVE

          DEC/CMS V3.0 allows a user to reserve  multiple  generations
          of  an  element  and  to  reserve  the same generation of an
          element multiple times.   These  multiple  reservations  are
          only allowed if concurrent reservations are allowed.

          DEC/CMS V3.0 provides a means to mark  a  generation  of  an
          element  as  reserved  without  performing  any  file I/O or
          creating an  output  file.   This  is  accomplished  by  the
          /NOOUTPUT  qualifier  on the RESERVE command.  The /NOOUTPUT
          qualifier is also available on the FETCH  command,  but  the
          generation will not be marked as reserved.































                                                               Page 13


     6.17  REVIEW

          The following commands implement REVIEW functionality, which
          allows  users  to specify that new generations of an element
          must be reviewed before becoming a "normal" part of the  CMS
          library.

          In addition, the CREATE ELEMENT and MODIFY ELEMENT  commands
          now  take  the /[NO]REVIEW qualifier to control an element's
          review attribute,  which  indicates  whether  newly  created
          generations  of  that element should be automatically marked
          for review.


     6.17.1  ACCEPT GENERATION -

          SYNTAX:

            $ CMS  ACCEPT  GENERATION  element-expression  /qualifiers
            "remark"

          COMMAND DESCRIPTION:

            ACCEPT GENERATION marks a generation which currently has a
            review  pending  as  accepted, removing it from the review
            pending  list.   This  command  can  only   be   used   on
            generations which have a review pending.


     6.17.2  CANCEL REVIEW -

          SYNTAX:

            $  CMS  CANCEL   REVIEW   element-expression   /qualifiers
            "remark"

          COMMAND DESCRIPTION:

            CANCEL  REVIEW  cancels  a  generation's  pending  review,
            removing  it  from the review pending list.  The effect on
            the generation is the same as if  it  had  been  accepted.
            This  command can only be used on generations which have a
            review pending.


     6.17.3  MARK GENERATION -

          SYNTAX:

            $  CMS  MARK  GENERATION  element-expression   /qualifiers
            "remark"

          COMMAND DESCRIPTION:

            MARK  GENERATION  marks  a  generation  which   does   not





















                                                               Page 14


            currently  have a review pending as pending review, adding
            it to the review pending list.  This command can  only  be
            used on generations which do not have a review pending.


     6.17.4  REJECT GENERATION -

          SYNTAX:

            $ CMS  REJECT  GENERATION  element-expression  /qualifiers
            "remark"

          COMMAND DESCRIPTION:

            REJECT GENERATION marks a generation which currently has a
            review  pending  as  rejected, removing it from the review
            pending  list.   This  command  can  only   be   used   on
            generations which have a review pending.


     6.17.5  REVIEW GENERATION -

          SYNTAX:

            $ CMS  REVIEW  GENERATION  element-expression  /qualifiers
            "remark"

          COMMAND DESCRIPTION:

            REVIEW GENERATION  associates  a  review  comment  with  a
            generation  that  is currently under review.  This command
            can only be  used  on  generations  which  have  a  review
            pending.   Comments  entered with this command can be seen
            with the SHOW REVIEWS_PENDING command.


     6.17.6  SHOW REVIEWS_PENDING -

          SYNTAX:

            $   CMS    SHOW    REVIEWS_PENDING    [element-expression]
            [/qualifiers]

          COMMAND DESCRIPTION:

            Displays a list of those generations which  are  currently
            marked  for  review;  that is, those generations for which
            reviews are pending.  Also  displays  any  review  remarks
            that  have  been  associated  with  the  generation  under
            review.




























                                                               Page 15


     6.18  Search Lists

          DEC/CMS V3.0 provides users with the ability to operate on a
          search list of libraries.  A search list of libraries is set
          up by specifying a list of directory specifications  to  the
          CREATE  LIBRARY  or  SET LIBRARY commands.  In addition, the
          /AFTER and /BEFORE qualifiers on those  commands  allow  the
          search  list to be augmented, rather than superseded, by the
          CREATE LIBRARY or SET LIBRARY command.

          Most of the CMS commands now accept  the  optional  /OCCLUDE
          qualifier,  as  documented in the Command Dictionary part of
          the Guide to VAX DEC/CMS.  The  new  qualifier  is  used  to
          specify  the  command's  behavior  in  a library search list
          environment.   By  default,   the   command   searches   the
          consecutive  libraries in the search list until it finds the
          first instance of any object it acts  upon.   This  behavior
          can  be  modified  with the /OCCLUDE qualifier.  For a given
          type of object (ELEMENT, GROUP, CLASS, or OTHER), it can  be
          used  to  specify  whether the first or all instances of the
          given object found in the search list are to be  acted  upon
          by the command.

          In addition, a new command  has  been  added  to  allow  the
          removal of one or more libraries from the search list:


     6.18.1  SET NOLIBRARY -

          SYNTAX:

            $  CMS  SET  NOLIBRARY  directory-spec[,directory-spec...]
            [/qualifiers]

          COMMAND DESCRIPTION:

            Removes one or more, or all, libraries  from  the  current
            library  search  list.   If all libraries are removed, the
            logical CMS$LIB is deassigned.


     6.19  SHOW RESERVATIONS

          DEC/CMS  V3.0  allows  users  to  specify  that   concurrent
          replacements  are  not  to  be  displayed  when  using  SHOW
          RESERVATIONS.  This is accomplished by  the  /NOREPLACEMENTS
          qualifier on the SHOW RESERVATIONS command.

































                                                               Page 16


     6.20  UNRESERVE

          DEC/CMS  V3.0  allows  a  given  user  to  reserve  multiple
          generations  of  the same element (including having multiple
          reservations of the same generation).   This  requires  that
          the  user  be  able  to  specify  which  generation is being
          unreserved.   To  accomplish  this,  the   /GENERATION   and
          /IDENTIFICATION_NUMBER   qualifiers   have   been  added  to
          UNRESERVE.

          DEC/CMS V3.0 allows users to UNRESERVE reservations held  by
          another  user  if  the person attempting the UNRESERVE holds
          the process BYPASS privilege or  is  granted  (via  an  ACE)
          BYPASS  access  to  the element.  The UNRESERVE is logged as
          having been performed by the person issuing the command, not
          by  the  holder  of the initial reservation.  Any attempt to
          UNRESERVE a reservation held by  another  user  prompts  for
          confirmation before doing so.

          The UNRESERVE command's /DELETE  qualifier  now  accepts  an
          optional file specification:

            UNRESERVE/DELETE[=file-specification]

          The file specification allows the user  to  request  that  a
          file  with  a different name than the name of the unreserved
          element be deleted from the user's directory.  It  can  also
          be  used  to  specify  the device and/or directory where the
          file to be deleted resides.  If  the  /DELETE  qualifier  is
          used  without  a  file-specification, then the file with the
          same name as the  name  of  the  element  being  unreserved,
          residing  in  the current default directory, is assumed.  In
          any case, if the /DELETE qualifier is used, all the versions
          of the file are deleted from the given directory.


     6.21  New Callable Entry Points for V3


           o  CMS$DELETE_GENERATION

           o  CMS$MODIFY_GENERATION

           o  CMS$RETRIEVE_ARCHIVE

           o  CMS$REVIEW_GENERATION

           o  CMS$SET_ACL

           o  CMS$SET_NOLIBRARY

           o  CMS$SHOW_ACL

           o  CMS$SHOW_ARCHIVE






















                                                               Page 17


           o  CMS$SHOW_REVIEWS_PENDING



     6.22  Modified Callable Entry Points for V3


           o  CMS$ANNOTATE

           o  CMS$CREATE_ELEMENT

           o  CMS$CREATE_LIBRARY

           o  CMS$DIFFERENCES

           o  CMS$FETCH

           o  CMS$MODIFY_ELEMENT

           o  CMS$REMARK

           o  CMS$REMOVE_GENERATION

           o  CMS$REPLACE

           o  CMS$SET_LIBRARY

           o  CMS$SHOW_GROUP

           o  CMS$SHOW_LIBRARY

           o  CMS$SHOW_RESERVATIONS

           o  CMS$SHOW_VERSION

           o  CMS$UNRESERVE



     7  Known Problems and Restrictions

     7.1  CMS V2.3 and CMS T3.0 Libraries

          CMS V2.3 attempts to work on a CMS V3 library, despite being
          an incompatible version, resulting in a corrupted V3 library
          (CMS T3.0 will  not  work  on  V2.3  libraries,  except  for
          conversion).

































                                                               Page 18


     7.2  Callback Routine Parameters

          Callback   output    routines    for    CMS$SHOW_GENERATION,
          CMS$SHOW_GROUP  and  CMS$SHOW_RESERVATIONS  are  called with
          additional parameters.  Callback routines written in  BASIC,
          DIBOL,   or  any  other  language  which  performs  run-time
          argument count checking, will have to  be  updated  for  use
          with this version of DEC/CMS.


     7.3  Merging Binary Files

          Merging of binary files, while  allowed,  will  usually  not
          produce meaningful results.


     7.4  Depth of Library Directories

          CMS libraries cannot be in 8th-level directories, since  the
          first  CREATE  ELEMENT  attempt  will  be unable to create a
          subdirectory.   CREATE  LIBRARY  and  CONVERT  LIBRARY  will
          detect this condition and signal an error.


     7.5  Virtual Memory Requirements

          CMS operations performed on several objects at  a  time  may
          require  large  amounts  of virtual memory.  You may need to
          increase your page file quota (pgflquo) accordingly.


     7.6  Assigning Action ACEs to Multiple Objects

          When assigning action ACEs to  multiple  objects  (specified
          through  comma  lists or wildcarded expressions, or found in
          multiple libraries in a library search  list)  the  SET  ACL
          command  may  report  syntax errors in otherwise correct ACE
          specifications.  This can  be  worked  around  by  assigning
          action ACEs to a single object at a time.


     7.7  Blanks Cannot Separate Multiple Action ACEs

          When multiple action ACEs are specified on a single SET  ACL
          command,  only  commas  should be used as separators between
          the individual ACEs.  Additional blanks or  tabs  may  cause
          the  SET  ACL  command  to report syntax errors in otherwise
          correct ACE specifications.































                                                               Page 19


     7.8  Wildcard Indicator in Notification Messages

          The history line sent to the CMS event handler and  seen  in
          notification  messages will contain the letter 'W' after the
          transaction time field if the transaction  resulted  from  a
          wildcard  operation.  This information should be suppressed,
          as it is by the SHOW HISTORY command.


     7.9  Restriction on CMS$FETCH_OPEN and Library Search Lists

          CMS$FETCH_OPEN,  the  callable   routine   that   begins   a
          line-by-line  fetch  transaction,  cannot  be  used  with  a
          library search list.  The directory argument may not contain
          wildcard characters, nor may it be a comma list of directory
          specifications, nor may it be a search list logical name.


     7.10  Restriction on DIFFERENCES and Library Search Lists

          The following restrictions  apply  to  the  CMS  DIFFERENCES
          command when used with a CMS library search list.

          If  both  file_1   and   file_2   are   element   generation
          specifications, then both of the elements must reside in the
          same library of the library search list.

          CMS DIFFERENCES will emit %CMS-E-NOFETCH (or other  messages
          returned  by CMS$FETCH_OPEN) if it cannot locate a specified
          element generation.  In a  library  search  list,  this  may
          occur  if one or both of the specified elements do not exist
          in the first library.  These messages  will  be  issued  for
          each library of the library search list in which the element
          is not found.  The exact sequence of such  messages  depends
          on  the  values of the /OCCLUDE qualifier.  In such cases, a
          %CMS-E-NOFETCH message may be followed by a %CMS-S-IDENTICAL
          or  %CMS-W-DIFFERENT  message.  The latter message indicates
          the actual status of the operation, whereas the  intervening
          %CMS-E-NOFETCH  messages  are  a  side-effect of the library
          search list traversal.  This behavior will be corrected in a
          subsequent release of DEC/CMS.

          The same  considerations  apply  to  the  callable  routine,
          CMS$DIFFERENCES.   CMS$DIFFERENCES  uses  the callable fetch
          routines,      CMS$FETCH_OPEN,      CMS$FETCH_GET,       and
          CMS$FETCH_CLOSE.   Conditions  may  be  signaled  from these
          routines during  the  operation  of  CMS$DIFFERENCES.   This
          behavior will be changed in a subsequent release of DEC/CMS.































                                                               Page 20


     7.11  Input File Deletion

          If CMS is unable to delete the input  file  after  a  CREATE
          ELEMENT  or  REPLACE operation, no message will be issued to
          inform the user of the problem.


     7.12  COPY ELEMENT with Many Elements/Generations

          Using the COPY ELEMENT command to copy either a large number
          of elements or an element with a large number of generations
          may cause CMS to fail with an error diagnostic.


     7.13  Generation Stack Overflow

          Under certain pathological conditions,  CMS  may  issue  the
          GENSTKOVF  (generation  stack overflow) fatal error message.
          This indicates that CMS was trying to nest generation  edits
          to  a depth greater than 400, which is the maximum allowable
          nesting level.  This nesting restriction may be removed in a
          future version of CMS.


     7.14  COPY ELEMENT/LIBRARY Messages

          When the /LIBRARY qualifier is used with  the  COPY  ELEMENT
          command,  CMS  will  emit  CMS-I-LIBIS, CMS-I-LIBINSLIS, and
          CMS-I-LIBREMLIS diagnostics as it references  the  specified
          library.    The  current  default  library  context  is  not
          modified.


     7.15  Reference Copy Messages

          When using CMS library reference copies, certain file system
          related  messages, such as RMS-F-DEV or RMS-E-PRV, may refer
          to the reference copy directory.  The CMS  messages  do  not
          make  this  explicit  in some cases.  When such problems are
          encountered, you should check that  you  have  the  required
          access to the reference copy.


     7.16  VERIFY/REPAIR on a Library with REFREPAIR Condition

          When using VERIFY/REPAIR to  clear  a  REFREPAIR  (reference
          copies  need  repairing)  condition,  CMS may ask if certain
          spurious reference copies should be deleted.  If you  answer
          'NO'  to these prompts, CMS will report that the library has
          been repaired, but the REFREPAIR condition will still exist.




























                                                               Page 21


     7.17  VERIFY/RECOVER on Valid Library

          If you use the VERIFY/RECOVER command on a library that does
          not  need  recovery,  the VERIFY operation will fail with an
          error diagnostic, RECNOTNEC, stating that the  library  does
          not need recovery.


     7.18  SET ACL/DELETE with Nonexistent Identifier

          When using the SET ACL/DELETE command to delete  a  list  of
          ACEs  from  an  ACL,  the  operation  will  terminate  if it
          encounters an identifier that does not exist on the  system.
          The  correct  behavior is to continue the operation with the
          remaining ACEs specified.


     7.19  Syntax Errors on SET ACL and SHOW ACL

          Certain syntax errors are not detected by the command parser
          in  the  SET  ACL and SHOW ACL commands.  This may result in
          the repetitious display of the illegal syntax error  message
          for each object specified for the operation.


     7.20  Severity of Summary Messages

          The severity of CMS success summary messages may be  changed
          from  the  documented  value  of SUCCESS to INFORMATIONAL in
          some cases.  This will be corrected in a future  release  of
          DEC/CMS.


     7.21  Parameters on Negated Qualifiers

          Certain qualifiers that should  only  accept  parameters  in
          their  non-negated  form  are  also  accepting them in their
          negated form, and the qualifier is then  treated  as  if  it
          were    not    negated.     For   example,   the   qualifier
          /NOHISTORY="#H" should be disallowed, but is  being  treated
          as /HISTORY="#H".


     8  Documentation Errata

     8.1  RETRIEVE ARCHIVE

          The description of  the  RETRIEVE  ARCHIVE  command  in  the
          Command  Dictionary  of the Guide to VAX DEC/Code Management
          System is incorrect.  The corrected version is as follows:

             The  RETRIEVE  ARCHIVE  command  retrieves  one  or  more
             generations of an element from one or more archive files.
             By default, CMS retrieves the highest numbered generation
             from the archive file and places a copy of the generation





















                                                               Page 22


             in your default directory with the  same  file  name  and
             type  as the original element (unless you specify another
             name or location with the /OUTPUT  qualifier).   You  can
             indicate  a  specific generation to be retrieved with the
             /GENERATION qualifier.  CMS creates  one  file  for  each
             retrieved  generation.  You do not need to have a library
             currently set to use this command, because  the  RETRIEVE
             ARCHIVE command does not interact with the CMS library.
